<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>数组的结构赋值</title>
  </head>
  <body>
    <script>
      //es6允许按照一定的模式，从数组和对象中提取值，对变量进行赋值，这被称为结构(Destructuring)
      //以前，为变量赋值，只能直接指定值。
      // let a = 1;
      // let b = 2;
      // let c = 3;
      //es6 写法
      let [a, b, c] = [1, 2, 3]; //可以从数组中取值，按照对应位置，对变量赋值。本质上，这种写法属于“模式匹配”，只要俩边的模式相同。左边的变量
      // 就会被赋予对应的值，下面是一些使用嵌套数组进行解构的例子。
      console.log(a, b, c); // 1,2,3

      let [foo, [[bar], baz]] = [1, [[2], 3]];
      console.log(foo, bar, baz); // 1,2,3
      var [, , third] = ["foo", "bar", "baz"];
      console.log(third); // 'baz'
      var [x, , y] = [1, 2, 3];
      console.log(x, y); //1 3
    </script>
  </body>
</html>
